home *** CD-ROM | disk | FTP | other *** search
/ Compendium Deluxe 2 / LSD and 17bit Compendium Deluxe - Volume II.iso / a / prog / asmsrc / tango2.lha / macros < prev    next >
Text File  |  1988-07-19  |  2KB  |  117 lines

  1. Cwait        MACRO
  2.         DC.B    \1,\2+9,$FF,$FE        WAIT        10,09
  3.         ENDM
  4. Cskip:        MACRO
  5.         DC.B    \1,\2+9,$FF,$FF        SKIP        10,09
  6.         ENDM
  7. Cmove        MACRO
  8.         DC.W    \2,\1            MOV         50,$180
  9.         ENDM
  10. alloc        MACRO
  11.         MOVE.L    $4,A6
  12.         MOVE.L    #\1,D0
  13.         MOVE.L    #\2,D1
  14.         JSR    -198(A6)        ALLOC        100,$10002,mem
  15.         move.l    d0,\3
  16.         ENDM
  17. free        MACRO
  18.         MOVE.L    $4,A6
  19.         MOVE.L    \1,a1
  20.         MOVE.L    #\2,D0
  21.         JSR    -210(A6)        FREE         MEM,100
  22.         ENDM
  23.  
  24.     
  25. incq    Macro                        Increment quick
  26.         addq \1,\2
  27.         Endm
  28.  
  29. incb    Macro                        Increment byte
  30.         add.b \1,\2
  31.         Endm
  32.  
  33. incw    Macro                        Increment word
  34.         add.w \1,\2
  35.         Endm
  36.  
  37. incl    Macro                        Increment long word
  38.         add.l \1,\2
  39.         Endm
  40.  
  41. decq    Macro
  42.         subq \1,\2
  43.         Endm
  44.  
  45. decb    Macro
  46.         sub.b \1,\2
  47.         Endm
  48.  
  49. decw    Macro
  50.         sub.w \1,\2
  51.         Endm
  52.  
  53. decl    Macro
  54.         sub.l \1,\2
  55.         Endm
  56.  
  57.  
  58. *********************************************************************************************
  59. ;Co-processor Macros
  60.  
  61. end_copper    Macro
  62.             dc.w $ffff,$fffe
  63.             Endm
  64.  
  65. set_pal        Macro
  66.             dc.w $ffdf,$fffe
  67.             Endm
  68.  
  69. wait        Macro
  70.             dc.w \1,\2
  71.             Endm
  72.  
  73. put            Macro
  74.             dc.w \1,\2
  75.             Endm
  76.             
  77.  
  78. *********************************************************************************************
  79. ;Stack Macros
  80.  
  81.     even
  82.     
  83. push        Macro                    Save a register on stack
  84.             movem.l    \1,-(sp)
  85.             Endm
  86.  
  87. pop            Macro                    Return a register from stack
  88.             movem.l    (sp)+,\1
  89.             Endm
  90.             
  91. save_all    Macro
  92.             movem.l    a0-a6/d0-d7,-(sp)
  93.             Endm
  94.             
  95. return_all    Macro
  96.             movem.l    (sp)+,d0-d7/a0-a6
  97.             Endm
  98.  
  99.  
  100. ******************************************************************************************
  101. ;EXEC macros
  102.  
  103. CALLEXEC    macro
  104.             move.l    4.w,a6
  105.             endm
  106.  
  107.  
  108. ******************************************************************************************
  109. ;Mouse macro
  110.  
  111. test_mouse    macro
  112. test        btst    #6,$bfe001
  113.             bne.s    test
  114.             endm            
  115.                         
  116.  
  117.